Developer Documentation

QuickTime 4 API Documentation

Inside Macintosh: QuickTime Components

Previous | Overview | Contents | Next |

Component Manager Request Codes

As with all components, your channel component receives its requests from the Component Manager in the form of request codes. Apple strongly recommends that you fully support all of the Component Manager's request codes in your channel component--especially the target request. Developers will want to extend the capabilities of the sequence grabber channel components. The Component Manager's CaptureComponent function, which uses the target request, is the most convenient mechanism for obtaining the services of a component and then extending those services. If your channel component does not support the target request, then it cannot be used by applications or other components in this manner. You can use the following constants to refer to the request codes for each of the functions that your channel component must support.

    /* basic sequence grabber channel component selectors */
    kSGSetGWorldSelect                      = 0x4;      /* SetGWorld */     
    kSGStartPreviewSelect                   = 0x10;     /* SGStartPreview */
    kSGStartRecordSelect                    = 0x11;     /* SGStartRecord */
    kSGIdleSelect                           = 0x12;     /* SGIdle */
    kSGStopSelect                           = 0x13;     /* SGStop */
    kSGPauseSelect                          = 0x14;     /* SGPause */
    kSGPrepareSelect                        = 0x15;     /* SGPrepare */
    kSGReleaseSelect                        = 0x16;     /* SGRelease */
    kSGUpdateSelect                         = 0x27;     /* SGUpdate */

    /* selectors for common channel configuration functions */
    kSGCSetChannelUsageSelect               = 0x80; /* SGCSetChannelUsage */
    kSGCGetChannelUsageSelect               = 0x81; /* SGCGetChannelUsage */
    kSGCSetChannelBoundsSelect              = 0x82; /* SGCSetChannelBounds */
    kSGCGetChannelBoundsSelect              = 0x83; /* SGCGetChannelBounds */
    kSGCSetChannelVolumeSelect              = 0x84; /* SGCSetChannelVolume */
    kSGCGetChannelVolumeSelect              = 0x85; /* SGCGetChannelVolume */
    kSGCGetChannelInfoSelect                = 0x86; /* SGCGetChannelInfo */
    kSGCSetChannelPlayFlagsSelect           = 0x87; /* SGCSetChannelPlayFlags */
    kSGCGetChannelPlayFlagsSelect           = 0x88; /* SGCGetChannelPlayFlags */
    kSGCSetChannelMaxFramesSelect           = 0x89; /* SGCSetChannelMaxFrames */
    kSGCGetChannelMaxFramesSelect           = 0x8a; /* SGCGetChannelMaxFrames */
    kSGCSetChannelRefConSelect              = 0x8b; /* SGCSetChannelRefCon */
    kSGCSetChannelClipSelect                = 0x8C;  /* SGCSetChannelClip */
    kSGCGetChannelClipSelect                = 0x8D;  /* SGCGetChannelClip */
    kSGCGetChannelSampleDescriptionSelect = 0x8E;
                                                    /* SGCGetChannelSampleDescription */
    kSGCGetChannelDeviceListSelect              = 0x8F;     /* SGCGetChannelDeviceList */
    kSGCSetChannelDeviceSelect                  = 0x90;     /* SGCSetChannelDevice */
    kSGCSetChannelMatrixSelect                  = 0x91;     /* SGCSetChannelMatrix */
    kSGCGetChannelMatrixSelect                  = 0x92;     /* SGCGetChannelMatrix */
    kSGCGetChannelTimeScaleSelect               = 0x93;     /* SGCGetChannelTimeScale */

    /* selectors for video channel configuration functions */
    kSGCGetSrcVideoBoundsSelect                     = 0x100;    /* SGCGetSrcVideoBounds */
    kSGCSetVideoRectSelect                          = 0x101;    /* SGCSetVideoRect */
    kSGCGetVideoRectSelect                          = 0x102;    /* SGCGetVideoRect */
    kSGCGetVideoCompressorTypeSelect                = 0x103;
                                                    /* SGCGetVideoCompressorType */

    kSGCSetVideoCompressorTypeSelect                = 0x104;
                                                    /* SGCSetVideoCompressorType */
    kSGCSetVideoCompressorSelect                    = 0x105;    /* SGCSetVideoCompressor */
    kSGCGetVideoCompressorSelect                    = 0x106 ;   /* SGCGetVideoCompressor */
    kSGCGetVideoDigitizerComponentSelect            = 0x107;
                                                    /* SGCGetVideoDigitizerComponent */
    kSGCSetVideoDigitizerComponentSelect= 0x108;
                                                    /* SGCSetVideoDigitizerComponent */
    kSGCVideoDigitizerChangedSelect                 = 0x109;
                                                    /* SGCVideoDigitizerChanged */
    kSGCSetVideoBottlenecksSelect                   = 0x10a;
                                                    /* SGCSetVideoBottlenecks */
    kSGCGetVideoBottlenecksSelect                   = 0x10b;
                                                    /* SGCGetVideoBottlenecks */
    kSGCGrabFrameSelect                             = 0x10c;    /* SGCGrabFrame */
    kSGCGrabFrameCompleteSelect                     = 0x10d;
                                                    /* SGCGrabFrameComplete */
    kSGCDisplayFrameSelect                          = 0x10e;    /* SGCDisplayFrame */
    kSGCCompressFrameSelect                         = 0x10f;    /* SGCCompressFrame */
    kSGCCompressFrameCompleteSelect                 = 0x110;
                                                            /* SGCCompressFrameComplete */
    kSGCAddFrameSelect                              = 0x111; /* SGCAddFrame */
    kSGCTransferFrameForCompressSelect              = 0x112;
                                                        /* SGCTransferFrameForCompress */
    kSGCSetCompressBufferSelect                     = 0x113;     /* SGCSetCompressBuffer */
    kSGCGetCompressBufferSelect                     = 0x114;     /* SGCGetCompressBuffer */
    kSGCGetBufferInfoSelect                         = 0x115;     /* SGCGetBufferInfo */
    kSGCSetUseScreenBufferSelect                    = 0x116;     /* SGCSetUseScreenBuffer */
    kSGCGetUseScreenBufferSelect                    = 0x117;     /* SGCGetUseScreenBuffer */
    kSGCGrabCompressCompleteSelect                  = 0x118;    
                                                    /* SGCGrabCompressComplete */
    kSGCDisplayCompressSelect                       = 0x119; /* SGCDisplayCompress */
    kSGCSetFrameRateSelect                          = 0x11A; /* SGCSetFrameRate */
    kSGCGetFrameRateSelect                          = 0x11B; /* SGCGetFrameRate */

    /* selectors for sound channel configuration functions */
    kSGCSetSoundInputDriverSelect               = 0x100; /* SGCSetSoundInputDriver */
    kSGCGetSoundInputDriverSelect               = 0x101; /* SGCGetSoundInputDriver */
    kSGCSoundInputDriverChangedSelect           
                                                = 0x102;    /* SGCSoundInputDriverChanged */
    kSGCSetSoundRecordChunkSizeSelect
                                                = 0x103;
                                                        /* SGCSetSoundRecordChunkSize */
    kSGCGetSoundRecordChunkSizeSelect               = 0x104;
                                                        /* SGCGetSoundRecordChunkSize */
    kSGCSetSoundInputRateSelect                     = 0x105; /* SGCSetSoundInputRate */
    kSGCGetSoundInputRateSelect                     = 0x106; /* SGCGetSoundInputRate */
    kSGCSetSoundInputParametersSelect               = 0x107;
                                                        /* SGCSetSoundInputParameters */
    kSGCGetSoundInputParametersSelect               = 0x108;
                                                        /* SGCGetSoundInputParameters */
    /* selectors for channel control functions */
    kSGCInitChannelSelect                           = 0x180; /* SGCInitChannel */
    kSGCWriteSamplesSelect                          = 0x181; /* SGCWriteSamples */
    kSGCGetDataRateSelect                           = 0x182; /* SGCDataRate */
    kSGCAlignChannelRectSelect                      = 0x183;    /* SGAlignChannelRect */
};

© 1999 Apple Computer, Inc.

Previous | Overview | Contents | Next